﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using BackgroundTest.Sprites;

namespace BackgroundTest.BasicAbstracts
{
    public class ControllerMessage
    {
        // The type of this message
        private MessageType messageType;
        public MessageType MessageType
        {
            get { return messageType; }
        }

        // The sprite message of the battlefield
        private SpriteMessage spriteMessage;
        public SpriteMessage SpriteMessage
        {
            get { return spriteMessage; }
        }

        /************************************************************************/
        /* Method name: Construction Function                                   */
        /* Parameters: Camera: the camera of the battle field.                  */
        /************************************************************************/
        public ControllerMessage(MessageType _messageType, int _assignedNumber, Direction _direction, MoveType _moveType)
        {
            messageType = _messageType;
            spriteMessage = new SpriteMessage(_assignedNumber, _direction, _moveType);
        }
        public ControllerMessage(MessageType _messageType, int _assignedNumber, Direction _direction, MoveType _moveType, int _jumpHeight)
        {
            messageType = _messageType;
            if (_moveType == MoveType.Jump)
            {
                spriteMessage = new SpriteMessage(_assignedNumber, _direction, _moveType, _jumpHeight);
            }
        }
    }
}
